Imports KanBan.Pgd.Domain.Entities

Namespace Interfaces

    Public Interface IRepositoryBase(Of T As IDomainEntity)

        Function SaveOrUpdate(ByVal entity As T) As T
        Function GetById(ByVal id As Guid) As T
        Function [Get](ByVal propertyName As String, ByVal propertyValue As String) As T
        Function GetAll() As IEnumerable(Of T)
        Function GetAll(ByVal fromDate As DateTime, ByVal toDate As DateTime) As IEnumerable(Of T)
        Sub Delete(ByVal entity As T)
        Sub DeleteLogical(ByVal Id As Guid)


    End Interface

End Namespace
